package com.hlkj.pay.vo.merchant.resp.app;

import com.hlkj.pay.dto.merchant.CashierConfigDto;
import com.hlkj.pay.dto.merchant.RouterConfigDto;
import com.hlkj.pay.vo.BaseMerchantResp;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
* 平台应用信息表
* @TableName t_merchant_apps
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class MerchantAppResp extends BaseMerchantResp {
    /**
    * 是否禁用：0-否；1-是；
    */
    @Schema(description = "是否启用：0-否；1-是；")
    @NotNull(message = "状态 不能为空")
    private Integer status;
    /**
    * 所属平台，1=运营平台，2=机构，3=商户
    */
    @Schema(description = "所属平台，1=运营平台，2=机构，3=商户")
    private Integer sysType;
    /**
    * 商户编码
    */
    @Schema(description = "商户编码")
    @NotEmpty(message = "商户编码不能为空")
    private String sn;
    /**
    * 应用appid
    */
    @Schema(description = "应用appid")
    private String appId;
    /**
    * 应用名称
    */
    @Schema(description = "应用名称")
    @NotEmpty(message = "应用名称 不能为空")
    private String appName;
    /**
    * 是否默认应用
    */
    @Schema(description = "是否默认应用")
    @NotNull(message = "应用名称 不能为空")
    private Integer defaultAppFlag;
    /**
    * MD5秘钥
    */
    @Schema(description = "MD5秘钥")
    private String md5Key;
    /**
    * 商户公钥
    */
    @Schema(description = "商户公钥")
    private String publicKey;
    
    /**
    * 商户私钥
    */
    @Schema(description = "商户私钥")
    private String privateKey;
    
    /**
     * 商户公钥
     */
    @Schema(description = "平台公钥")
    private String platPublicKey;
    /**
     * ip配置
     */
    @Schema(description = "ip配置")
    private String ipConfig;
    /**
     * 商户公钥
     */
    @Schema(description = "轮询配置")
    private RouterConfigDto routerConfig;

    @Schema(description = "收银配置")
    private CashierConfigDto cashierConfig;


}
